package com.woniu.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.woniu.commons.exception.YogaException;
import com.woniu.model.dto.RecruitPageDto;
import com.woniu.model.form.PageRecruitForm;
import com.woniu.model.model.YRecruit;
import com.woniu.model.param.AddRecruitParam;
import com.woniu.model.param.PageParam;
import com.woniu.model.param.UpdateRecruitParam;
import com.woniu.model.param.VenueLoadMyRecruitParam;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author EdisonLiu
 * @since 2024年05月23日
 */
public interface YRecruitService extends IService<YRecruit> {

    Integer addRecruit(AddRecruitParam p);

    Integer updateRecruit(UpdateRecruitParam p);

    Integer cancelRecruit(Integer recruitId, Integer venueId);

    Page<YRecruit> pageRecruit(PageRecruitForm form);

    Page<RecruitPageDto> pageAllRecruit(PageParam param) throws YogaException;


    /**
     * 场馆端查询自己发布了的招聘信息（+带条件搜索）
     * @param
     * @return
     */
    public Page<RecruitPageDto> VenueLoadMyRecruit(VenueLoadMyRecruitParam param)throws YogaException;
}
